关于|,||,&,&&

来源:百度知道 编辑:UC知道 时间:2024/05/05 15:28:40
|,||,&,&&有什么区别?
比如if(a|b),if(a||b),if(a&b),if(a&&b)这样
顺便帮忙分析下
if(a&b|c)
if(a|b&c)
if(a||b&&c)
if(a&&b||c)
if(a|b&&c)
if(a&&b|c)
if(a||b&c)
if(a&b||c)
唉,自己都晕了....大家帮帮忙,谢谢了
饿...avenger19老大,我看不懂...这个,能通俗点吗?

|按位或
||逻辑或
&按位与
&&逻辑与

按位或就是转成二进制数,每位进行逻辑运算
|| 和&&用在bool表达式里,运算符两边都需要时bool型

按位运算不一定是返回bool型的
msdn上的一个例子
using System;
class MainClass
{
static void Main()
{
Console.WriteLine(true & false); // logical and
Console.WriteLine(true & true); // logical and
Console.WriteLine("0x{0:x}", 0xf8 & 0x3f); // bitwise and
}
}

Output

False
True
0x38
------------------------------------------------------------
晕,要通俗到什么程度?

只解释& 其它我一说你就明白了
7&5=5
为什么
7是111(2进制)
5是101
-----------------
101
明白了吗?1与1得1 ,1与0得0,位与就在二进制是每一位都与一下
111
101
----
101

101是几,是5,所以7&5=5

一个的是按位的运算,两个的时逻辑运算,两个的两个因子要是bool型的